{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Nova Case\n", "## Problem Definition\n", "You work for Nova case, a start-up company that manufactures protective cases for mobile phones made of a novel material.\n", "The marketing department of your company has estimated a formula for the optimal price elasticity of demand for the two different models you are currently selling online. \n", "Recall that the price elasticity of demand represents the relationship between the quantity and the price of a good or service. They have estimated that, for both products, \n", "the price elasticity follows the following expression:\n", "\n", "LQ = K + E·LP\n", "\n", "Where LQ is the logarithm of the quantity, LP is the logarithm of the price, K is the demand constant and E the demand elasticity. \n", "You are in charge of the production department and need to calculate the optimal production mix one planning period (1 day), taking into account this relationship between price and quantity. \n", "You have local production, and the most restrictive resource is the moulding machine which has different cycle time (in seconds) for each case.\n", "You also have a limited supply of the novel material and each model uses a different quantity of this material.\n", "In summary, this is the data of your first product: \n", "\n", "- K1 = 4\n", "- E1 = 2\n", "- cycle time = 30 seconds\n", "- key material quantity = 45 grams\n", "\n", "And for your second product:\n", "\n", "- K2 = 8\n", "- E2 = 2\n", "- cycle time = 25 seconds\n", "- key material quantity = 40 grams\n", "\n", "The total operational time of the moulding machine in the planning period is 6.5 hours and your supplier can provide you up to 40 kilograms per day of the novel material.\n", "\n", "**a.** Write down a Non-Linear Programming problem to calculate the optimal production mix. (1 point)\n", "This is a non-linear production mix problem where the objective is to maximise profits. The objective function is of the type: \n", "\n", "$\\max z = \\sum_i{Q_i·P_i}$\n", "\n", "We know that relationship between price and quantity is determined by the price elasticity expression:\n", "\n", "\n", "LQ = K + E·LP\n", "\n", "Now, we can transform this into a linear expression as: \n", "\n", "$e^{\\ln(Q)} = e^{k+E·\\ln(P)} = e^k*e^{E·\\ln(P)}$\n", "\n", "$Q = e^k·P^E$\n", "\n", "or\n", "\n", "$P = e^{-k/E}·Q^{1/E}$\n", "\n", "We can now substitute this expression in the objective function. \n", "\n", "$\\max z = \\sum_i{Q_i·e^{-k_i/E_i}·Q_i^{1/E_i}}$\n", "\n", "$\\max z = \\sum_i{e^{-k_i/E_i}·Q_i^{E_i+1/E_i}}$\n", "\n", "Now, by substituting the values of k and E for both products, we get: \n", "\n", "$\\max z = e^{-2}·Q_1^{3/2} + e^{-4}·Q_2^{3/2}$\n", "\n", "We have two constraints that depend on the decision variables, the operating time of the moulding machine and the availability of materials:\n", "\n", "$30·Q_1 + 25·Q_2 \\leq 6.5·60·60$\n", "\n", "$45·Q_1 + 40·Q_2 \\leq 40000$\n", "\n", "**b.** Write down the Kuhn Tucker conditions. (2 points)\n", "\n", "Let us start by writing the problem in the canonical form:\n", "\n", "$\\max z = e^{-2}·Q_1^{3/2} + e^{-4}·Q_2^{3/2}$\n", "\n", "$30·Q_1 + 25·Q_2 - 23400 \\leq 0$\n", "\n", "$45·Q_1 + 40·Q_2 - 40000 \\leq$\n", "\n", "Now, the Lagrangian:\n", "\n", "$L = e^{-2}·Q_1^{3/2} + e^{-4}·Q_2^{3/2} + \\lambda_1·(30·Q_1 + 25·Q_2 - 23400) + \\lambda_2·(45·Q_1 + 40·Q_2 - 40000)$\n", "\n", "We are ready to proceed with the Kuhn Tucker conditions. \n", "\n", "- Gradient condition\n", "\n", "$\\frac{dL}{dQ_1} = 3/2·e^{-2}·\\sqrt{Q_1}+30·\\lambda_1 + 45·\\lambda_2$\n", "\n", "$\\frac{dL}{dQ_2} = 3/2·e^{-4}·\\sqrt{Q_2}+25·\\lambda_1 + 40·\\lambda_2$\n", "\n", "- Orthogonality condition\n", "\n", "$\\lambda_1·(30·Q_1 + 25·Q_2 - 23400) = 0$\n", "\n", "$\\lambda_2·(45·Q_1 + 40·Q_2 - 40000) = 0 $\n", "\n", "- Feasibility condition\n", "\n", "$30·Q_1 + 25·Q_2 - 23400 \\leq 0$\n", "\n", "$45·Q_1 + 40·Q_2 - 40000 \\leq 0$\n", "\n", "- Non negativity condition\n", "\n", "$Q_1, Q_2 \\geq 0$\n", "\n", "$\\lambda_1, \\lambda_2 \\leq 0$\n", "\n", "**c.** Assume that you need to take into account in your model the initial stock level of each product at the beginning of the planning period. How does this affect your model? Motivate your response (1 point)\n", "\n", "If we need to take into account the initial stock level, we need to define new decision variables representing the amounts to stock for next periods, and a new index to represent the periods. The objective function would take into account the total available quantity, that is, the sum of the produce quantity plus the quantity manufactured in previous periods that we can use at one period. Similarly, in the constraint we could use the available resources to produce for the current period or for future periods.\n", "\n", "**d.** What would it mean if, in a Kuh Tucker point, the Lagrangian multiplier of the material quantity constraint was equal to zero? (1 point)\n", "\n", "If the Lagrangian multiplier of the material quantity constraint is equal to zero, then by the orthogonality condition the right hand side of the constraint might be less than the daily quantity available, meaning that there might be some unused quantity." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" }, "pycharm": { "stem_cell": { "cell_type": "raw", "source": [], "metadata": { "collapsed": false } } } }, "nbformat": 4, "nbformat_minor": 2 }